/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package compilador.analisadorSintatico.operacoes;

import compilador.analisadorLexico.Token;
import compilador.analisadorSintatico.Producao;
import compilador.analisadorSintatico.simboloGramatical.NaoTerminal;
import compilador.analisadorSintatico.simboloGramatical.SimboloGramatical;

/**
 *
 * @author Joao Luiz
 */
class TERMO extends Producao{

    //<TERMO> ::= <FATOR> <TERMO_X>
    
    @Override
    public SimboloGramatical derivar() throws Exception {

        NaoTerminal TERMO = new NaoTerminal("TERMO");
        
        TERMO.add(new FATOR().derivar());

        TERMO.add(new TERMO_X().derivar());

        simbolo = TERMO;
        return simbolo;
    }

    @Override
    public void setSimbolo() {
        super.simbolo = new NaoTerminal("TERMO");
    }

}
